﻿//*** Guidance generated code ***//
using System;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;

using ProjectBase.Core;

namespace $safeprojectname$.Services
{
    /// <summary>Filter container for Translator Find()</summary>
    [Serializable]
    public class TranslatorFilter : BaseFilter<int>
    {
        /// <summary>
        ///     The localized phrase which is searched
        /// </summary>
        public string SearchedPhrase { get; set; }

        /// <summary>
        ///     The Language for which the phrase is searched
        /// </summary>
        public string SearchedLanguageName { get; set; }

        /// <summary>
        ///     Exact match (not LIKE). Even empty string ("") can be used as a filter
        ///     only Exact match is returned
        /// </summary>
        public string KeySearch { get; set; }

        /// <summary>
        ///     This allows to search even for Area == ""
        ///     (in comparison with 'Area' which will be firstly evaluated as string.IsNullOrEmpty)
        ///     only Exact match is returned
        /// </summary>
        public string AreaSearch { get; set; }

        public virtual string Key { get; set; }
        public virtual string Area { get; set; }

        public virtual IDictionary<string, bool> OrderHelper { get; set; }
    }
}